package com.smartcar.common.domain.request;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.*;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 订单request
 * @ProjectName : drive
 * @PackageName : com.smartcar.common.domain.request
 * @ClassName : OrderRequest
 * @Author : ZhouTeng
 * @CreateTime : 2023/10/16 8:21
 */

@Data
@AllArgsConstructor
@NoArgsConstructor
@ToString
@Builder
public class OrderRequest {
    //订单主键自增
      private Long id;
    //订单编号
    private String orderNumber;
    //城市
    private String orderCity;
    //车辆类型
    private Integer orderCarType;
    //订单状态
    private Integer orderState;
    //上车地点
    private String orderStarting;
    //下车地点
    private String orderDestination;
    //订单金额
    private BigDecimal orderMoney;
    //服务时长
    private Integer orderTime;
    //服务里程
    private Integer orderMileage;
    //支付类型
    private Integer orderPaymentType;
    ///人员信息
    private Integer orderPersonId;
    //时间信息
    private Integer orderTimeId;
    //消费信息
    private Integer orderMoneyId;
    //下单时间
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date orderdownTime;
    //服务总时长
    private Date usercarTime;
    //司机出发时间

    private Date driverstartTime;
    //司机到达时间

    private Date driverendTime;
    //服务开始时间
    private Date orderstartTime;
    //服务结束时间
    private Date orderendTime;
    //支付完成时间
    private Date paymentendTime;
    //取消时间
    private Date cancelTime;
    //下单人手机号
    private String personPhone;
    //乘车人姓名
    private String userName;
    //司机姓名
    private String driverName;
    //司机手机号
    private String driverPhone;
    //乘车人手机号
    private String userPhone;
    //司机车牌号
    private String driverCarcode;
    //起步费
    private BigDecimal startingMoney;
    //里程费
    private BigDecimal mileageMoney;
    //时长费
    private BigDecimal lowestMoney;
    //最低消费补足
    private BigDecimal longtripMoney;
    //远途费
    private BigDecimal tollMoney;
    //过桥费
    private BigDecimal nightMoney;
    //夜间服务费
    private BigDecimal parkingMoney;
    //停车费
    private BigDecimal authorMoney;
    //其他费用
    private BigDecimal preferentialMoney;
    private BigDecimal timeMoney;

    private Integer pageNum = 1;
    private Integer pageSize = 10;

    //优惠卷金额
    private BigDecimal latitudeStart;
    private BigDecimal longitudeStart;

}
